The increases in data generation have prompted the development of various products and systems of data management. The typical data organization system allows a user to display and view data in a table, a navigation tree, or some combination thereof. The standard way of locating an item in a collection of items is by searching the collection to find matches for text that is entered by the user. Another standard way of locating items is to use sequentially displayed options to progressively subset the data until the desired target(s) are listed in the display. That is, the choice of an option triggers display of a new set of options that are more restricted and detailed, and thus putatively enable the user to come closer to locating the desired target(s). This subsetting process, like the “search string” process, usually results in one or a chain of links to a set of desired items that can be displayed. In Internet based systems, this chain is composed of a series of URLs sometimes recorded as a single URL with forward slashes (/) separating each successive link. Sometimes, options that have been selected at each point are highlighted or otherwise marked. However, it is a common experience in searching such systems to be faced with the frustration of being unable to readily move backward and forward along the chain in order to go down a different path, to retraverse a previous path, or to display and compare two or more items located by traversing partially different paths during the search. In addition, because these paths commonly are volatile, it is a common experience to encounter difficulties in reproducing a path because one or more options selected along the way has been forgotten.
A table uses columns and rows to organize data information, such as, but not limited to, numbers, words, formulas, symbols, pictures and other objects that can be sorted, partially or fully displayed, and searched. For example, programs such as Microsoft Excel® organize numerical and alphanumerical data in such a table format.
The term “navigation tree” as used herein refers to a hierarchal structure that allows a user to go from one point to another. A tree structure is an algorithm for placing and locating data originating from any data source expressible in tabular form. The algorithm finds data by repeatedly making choices at decision points called nodes. A node can have as few as one branch or as many branches needed to represent the data. The structure is straightforward, but in terms of the number of nodes and children, a tree can be enormous. The starting point of a tree is referred to as the “root.” The maximum number of children per node is referred to as the “order of the tree.” The maximum number of access operations required to reach the desired record is referred to as the “depth.” In some trees, the order is the same at every node and the depth is the same for every record. This type of structure is said to be “balanced.” Other trees have varying numbers of children per node, and different records might lie at different depths. In such cases, the tree is said to have an “unbalanced” or “asymmetrical” structure. Microsoft's Windows Explorer®, for example, allows users to view their file systems and files through navigation trees.
Some programs, such as Microsoft Access®, organize data in a table/navigation tree format. There, a user can create relationships between tables to build a navigation tree, thereby combining a navigation tree's hierarchal structure with the display of a table. However, the user has to go through a long process to match information in separate tables and then create relationships. After these have been created, in order for the user to customize them, the user would have to create new relationships and new tables to get the results the user desires. Generally, users do not have permission to do the necessary manipulations.
Similar features have been incorporated into various e-commerce websites, such as Home Depot's® website. Generally any attempt to customize such e-commerce websites would be onerous, time consuming and complicated. In an e-commerce setting, the task of navigating through web pages to find a certain product or source of information often is cumbersome. The largely static pages are designed by developers to appeal to the broadest consumer base targeted by a particular set of items/information. Frequently, the pages are not displayed in a format or order that is most agreeable or useful to any particular user. Consequently, repeat customers must go through the process of searching for specific products or information each time they seek to purchase a product. Although some companies, such as Amazon®, can display related items and prior purchases, the user cannot determine what items are to be considered related. Furthermore, the user cannot determine the order at which the options at a given subsetting step are displayed, or the order of the steps that are performed.
Unlike existing table and tree-based systems that are designed to prevent a user from customizing his/her experience as he/she may wish, the instant invention provides a quick and easy-to-customize system and method for searching and organizing data. This system and method replaces current ways of locating items in collections, including but not limited to, items recorded in databases, knowledge bases, flat files or any combination thereof. The present invention replaces the current search-string and progressive option-display mechanisms with one that enables all relevant items to be displayed in a uniquely functional tree-table that may be readily and rapidly customized by users to restrict (subset) progressively the data in a way that enables selective displays of target items and information about them. Each row of the table contains all of the information the user wishes to, or is able to, include. Each column contains a specified type of information (data) for the items in at least one row.